﻿
namespace AdaptiveAgents.Agents
{
    /// <summary>
    /// Represents an algorithm that chooses which player is the next player
    /// </summary>
    public abstract class NextPlayerChooser
    {
        protected Agent _me;
        protected int NumberOfAgents {get; set;}
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="agent">The agent who chooses who is the next player</param>
        public NextPlayerChooser(Agent agent)
        {
            _me = agent;
            NumberOfAgents = _me.Environment.agents.Count;
        }
        
        public abstract int choose(int maxToConsider);
    }
}
